﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;

namespace EcoSystem
{
    /// <summary>
    /// 报表展示列配置
    /// </summary>
    [NotMapped]
    [Serializable]
    public class ReportColumnConfig
    {
        /// <summary>
        /// 
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string Title { get; set; }

        /// <summary>
        /// 报表列格式类型
        /// </summary>
        public string FormatType { get; set; }

        /// <summary>
        /// 排序号
        /// </summary>
        public int SortIndex { get; set; }

        /// <summary>
        /// 宽度
        /// </summary>
        public Nullable<int> Width { get; set; }

        /// <summary>
        /// 对齐方式
        /// </summary>
        public string Align { get; set; }

        /// <summary>
        /// 计算表达式字符
        /// </summary>
        public string Formula { get; set; }

        /// <summary>
        /// 显示格式化字符串
        /// </summary>
        public string Formatter { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public FormatOptions FormatOptions { get; set; }

        /// <summary>
        /// 是否允许列排序
        /// </summary>
        public Nullable<bool> Sortable { get; set; }

        /// <summary>
        /// 列样式
        /// </summary>
        public Dictionary<string, object> Styles { get; set; }

        /// <summary>
        /// 表格列其它属性配置
        /// </summary>
        public Dictionary<string, object> Props { get; set; }
    }
}
